[INFO] cloning repository https://github.com/joelpedraza/aoc2018
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/joelpedraza/aoc2018" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjoelpedraza%2Faoc2018", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjoelpedraza%2Faoc2018'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 04328d125792606a9ce43cd67b17379a839b77a1
[INFO] testing joelpedraza/aoc2018 against master#1f7f8ea0721a3b1eb73e6c6d25cccb371434b320 for pr-154065-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fjoelpedraza%2Faoc2018" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/joelpedraza/aoc2018
[INFO] finished tweaking git repo https://github.com/joelpedraza/aoc2018
[INFO] tweaked toml for git repo https://github.com/joelpedraza/aoc2018 written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/joelpedraza/aoc2018 on toolchain 1f7f8ea0721a3b1eb73e6c6d25cccb371434b320
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/joelpedraza/aoc2018 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded bit-set v0.5.0
[INFO] [stderr]   Downloaded bit-vec v0.5.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 572ce6e533f451218ee27a41ff4abe32309b13544de9cb52ffac3071540e39e0
[INFO] running `Command { std: "docker" "start" "-a" "572ce6e533f451218ee27a41ff4abe32309b13544de9cb52ffac3071540e39e0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "572ce6e533f451218ee27a41ff4abe32309b13544de9cb52ffac3071540e39e0", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "572ce6e533f451218ee27a41ff4abe32309b13544de9cb52ffac3071540e39e0", kill_on_drop: false }`
[INFO] [stdout] 572ce6e533f451218ee27a41ff4abe32309b13544de9cb52ffac3071540e39e0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 2652de9dabf4eafade178fa336bf563de9a487f032d614db4b27a2221bd46424
[INFO] running `Command { std: "docker" "start" "-a" "2652de9dabf4eafade178fa336bf563de9a487f032d614db4b27a2221bd46424", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr]    Compiling bit-vec v0.5.0
[INFO] [stderr]    Compiling bit-set v0.5.0
[INFO] [stderr]    Compiling aoc2018 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]    --> src/trie.rs:279:22
[INFO] [stdout]     |
[INFO] [stdout] 279 |         'a'...'z' => (*c as usize - 'a' as usize),
[INFO] [stdout]     |                      ^                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 279 -         'a'...'z' => (*c as usize - 'a' as usize),
[INFO] [stdout] 279 +         'a'...'z' => *c as usize - 'a' as usize ,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]    --> src/trie.rs:280:22
[INFO] [stdout]     |
[INFO] [stdout] 280 |         'A'...'Z' => (*c as usize - 'A' as usize),
[INFO] [stdout]     |                      ^                          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 280 -         'A'...'Z' => (*c as usize - 'A' as usize),
[INFO] [stdout] 280 +         'A'...'Z' => *c as usize - 'A' as usize ,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/trie.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |         'a'...'z' => (*c as usize - 'a' as usize),
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/trie.rs:280:12
[INFO] [stdout]     |
[INFO] [stdout] 280 |         'A'...'Z' => (*c as usize - 'A' as usize),
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::once`
[INFO] [stdout]   --> src/problem01/solution.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     use std::iter::once;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/problem02/solution.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 |         'a' ... 'z' => Some((c as u8 - 'a' as u8) as usize),
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/problem02/solution.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |         'A' ... 'Z' => Some((c as u8 - 'A' as u8) as usize),
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/problem03/solution.rs:154:30
[INFO] [stdout]     |
[INFO] [stdout] 154 |                     ' ' | '0'...'9' => false,
[INFO] [stdout]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/trie.rs:264:19
[INFO] [stdout]     |
[INFO] [stdout] 264 |             .map(|mut node| {
[INFO] [stdout]     |                   ----^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BitVec32Iter` is more private than the item `BitVec32::iter`
[INFO] [stdout]   --> src/bitvec.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub fn iter(&self) -> BitVec32Iter {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `BitVec32::iter` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `BitVec32Iter` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/bitvec.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | struct BitVec32Iter(BitVec32);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple associated items are never used
[INFO] [stdout]   --> src/bitvec.rs:8:15
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl BitVec32 {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout]  8 |     pub const NO_SET_BITS: usize = 32;
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout]  9 |     pub const ALL: BitVec32 = BitVec32(u32::max_value());
[INFO] [stdout]    |               ^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub fn clear(&mut self, i: usize) {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub fn len(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 34 |     pub fn iter(&self) -> BitVec32Iter {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 39 |     pub fn first(&self) -> usize {
[INFO] [stdout]    |            ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn last(&self) -> usize {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BitVec32Iter` is never constructed
[INFO] [stdout]   --> src/bitvec.rs:63:8
[INFO] [stdout]    |
[INFO] [stdout] 63 | struct BitVec32Iter(BitVec32);
[INFO] [stdout]    |        ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `len` is never read
[INFO] [stdout]   --> src/trie.rs:21:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct Trie {
[INFO] [stdout]    |            ---- field in this struct
[INFO] [stdout] 21 |     len: usize,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Trie` has a derived impl for the trait `Debug`, but this is intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `len`, `insert`, and `contains` are never used
[INFO] [stdout]   --> src/trie.rs:35:12
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl Trie {
[INFO] [stdout]    | --------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 35 |     pub fn len(&self) -> usize {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 43 |     pub fn insert(&mut self, s: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 57 |     pub fn contains(&mut self, s: &str) -> bool {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `find_boxes_with_single_transpose_bruteforce` is never used
[INFO] [stdout]   --> src/problem02/solution.rs:45:8
[INFO] [stdout]    |
[INFO] [stdout] 45 | pub fn find_boxes_with_single_transpose_bruteforce(input: &str) -> String {
[INFO] [stdout]    |        ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: function `has_single_transpose` is never used
[INFO] [stdout]   --> src/problem02/solution.rs:97:4
[INFO] [stdout]    |
[INFO] [stdout] 97 | fn has_single_transpose(word1: &str, word2: &str) -> bool {
[INFO] [stdout]    |    ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/problem06/solution.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout]  99 | impl Point {
[INFO] [stdout]     | ---------- associated function in this implementation
[INFO] [stdout] 100 |     fn new(x: u16, y: u16) -> Point {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `from_point` are never used
[INFO] [stdout]    --> src/problem06/solution.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 122 | impl Rect {
[INFO] [stdout]     | --------- associated functions in this implementation
[INFO] [stdout] 123 |     fn new() -> Rect {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     fn from_point(point: &Point) -> Rect {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/trie.rs:62:18
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn entry(&mut self, s: &str) -> Option<Entry> {
[INFO] [stdout]    |                  ^^^^^^^^^                     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn entry(&mut self, s: &str) -> Option<Entry<'_>> {
[INFO] [stdout]    |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trie.rs:127:19
[INFO] [stdout]     |
[INFO] [stdout] 127 |     fn find_entry(&mut self, depth: usize, s: &str) -> Option<Entry> {
[INFO] [stdout]     |                   ^^^^^^^^^ the lifetime is elided here       ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 127 |     fn find_entry(&mut self, depth: usize, s: &str) -> Option<Entry<'_>> {
[INFO] [stdout]     |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trie.rs:227:21
[INFO] [stdout]     |
[INFO] [stdout] 227 |     pub fn iter_mut(&mut self) -> EntryIterMut {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 227 |     pub fn iter_mut(&mut self) -> EntryIterMut<'_> {
[INFO] [stdout]     |                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1.33s
[INFO] running `Command { std: "docker" "inspect" "2652de9dabf4eafade178fa336bf563de9a487f032d614db4b27a2221bd46424", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "2652de9dabf4eafade178fa336bf563de9a487f032d614db4b27a2221bd46424", kill_on_drop: false }`
[INFO] [stdout] 2652de9dabf4eafade178fa336bf563de9a487f032d614db4b27a2221bd46424
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 5220ef6bda2bf0960d92f25962f0d1f7b26db7e93710025f90f92f8a9cdc3ad7
[INFO] running `Command { std: "docker" "start" "-a" "5220ef6bda2bf0960d92f25962f0d1f7b26db7e93710025f90f92f8a9cdc3ad7", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr]    Compiling aoc2018 v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]    --> src/trie.rs:279:22
[INFO] [stdout]     |
[INFO] [stdout] 279 |         'a'...'z' => (*c as usize - 'a' as usize),
[INFO] [stdout]     |                      ^                          ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 279 -         'a'...'z' => (*c as usize - 'a' as usize),
[INFO] [stdout] 279 +         'a'...'z' => *c as usize - 'a' as usize ,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unnecessary parentheses around match arm expression
[INFO] [stdout]    --> src/trie.rs:280:22
[INFO] [stdout]     |
[INFO] [stdout] 280 |         'A'...'Z' => (*c as usize - 'A' as usize),
[INFO] [stdout]     |                      ^                          ^
[INFO] [stdout]     |
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 280 -         'A'...'Z' => (*c as usize - 'A' as usize),
[INFO] [stdout] 280 +         'A'...'Z' => *c as usize - 'A' as usize ,
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/trie.rs:279:12
[INFO] [stdout]     |
[INFO] [stdout] 279 |         'a'...'z' => (*c as usize - 'a' as usize),
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/trie.rs:280:12
[INFO] [stdout]     |
[INFO] [stdout] 280 |         'A'...'Z' => (*c as usize - 'A' as usize),
[INFO] [stdout]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::iter::once`
[INFO] [stdout]   --> src/problem01/solution.rs:22:9
[INFO] [stdout]    |
[INFO] [stdout] 22 |     use std::iter::once;
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/problem02/solution.rs:13:13
[INFO] [stdout]    |
[INFO] [stdout] 13 |         'a' ... 'z' => Some((c as u8 - 'a' as u8) as usize),
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]   --> src/problem02/solution.rs:14:13
[INFO] [stdout]    |
[INFO] [stdout] 14 |         'A' ... 'Z' => Some((c as u8 - 'A' as u8) as usize),
[INFO] [stdout]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `...` range patterns are deprecated
[INFO] [stdout]    --> src/problem03/solution.rs:154:30
[INFO] [stdout]     |
[INFO] [stdout] 154 |                     ' ' | '0'...'9' => false,
[INFO] [stdout]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variable does not need to be mutable
[INFO] [stdout]    --> src/trie.rs:264:19
[INFO] [stdout]     |
[INFO] [stdout] 264 |             .map(|mut node| {
[INFO] [stdout]     |                   ----^^^^
[INFO] [stdout]     |                   |
[INFO] [stdout]     |                   help: remove this `mut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: type `BitVec32Iter` is more private than the item `bitvec::BitVec32::iter`
[INFO] [stdout]   --> src/bitvec.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 34 |     pub fn iter(&self) -> BitVec32Iter {
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `bitvec::BitVec32::iter` is reachable at visibility `pub(crate)`
[INFO] [stdout]    |
[INFO] [stdout] note: but type `BitVec32Iter` is only usable at visibility `pub(self)`
[INFO] [stdout]   --> src/bitvec.rs:63:1
[INFO] [stdout]    |
[INFO] [stdout] 63 | struct BitVec32Iter(BitVec32);
[INFO] [stdout]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `NO_SET_BITS` and `last` are never used
[INFO] [stdout]   --> src/bitvec.rs:8:15
[INFO] [stdout]    |
[INFO] [stdout]  7 | impl BitVec32 {
[INFO] [stdout]    | ------------- associated items in this implementation
[INFO] [stdout]  8 |     pub const NO_SET_BITS: usize = 32;
[INFO] [stdout]    |               ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn last(&self) -> usize {
[INFO] [stdout]    |            ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated function `new` is never used
[INFO] [stdout]    --> src/problem06/solution.rs:100:8
[INFO] [stdout]     |
[INFO] [stdout]  99 | impl Point {
[INFO] [stdout]     | ---------- associated function in this implementation
[INFO] [stdout] 100 |     fn new(x: u16, y: u16) -> Point {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated functions `new` and `from_point` are never used
[INFO] [stdout]    --> src/problem06/solution.rs:123:8
[INFO] [stdout]     |
[INFO] [stdout] 122 | impl Rect {
[INFO] [stdout]     | --------- associated functions in this implementation
[INFO] [stdout] 123 |     fn new() -> Rect {
[INFO] [stdout]     |        ^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     fn from_point(point: &Point) -> Rect {
[INFO] [stdout]     |        ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/trie.rs:62:18
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn entry(&mut self, s: &str) -> Option<Entry> {
[INFO] [stdout]    |                  ^^^^^^^^^                     ^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |                  |
[INFO] [stdout]    |                  the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 62 |     pub fn entry(&mut self, s: &str) -> Option<Entry<'_>> {
[INFO] [stdout]    |                                                     ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trie.rs:127:19
[INFO] [stdout]     |
[INFO] [stdout] 127 |     fn find_entry(&mut self, depth: usize, s: &str) -> Option<Entry> {
[INFO] [stdout]     |                   ^^^^^^^^^ the lifetime is elided here       ^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 127 |     fn find_entry(&mut self, depth: usize, s: &str) -> Option<Entry<'_>> {
[INFO] [stdout]     |                                                                    ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]    --> src/trie.rs:227:21
[INFO] [stdout]     |
[INFO] [stdout] 227 |     pub fn iter_mut(&mut self) -> EntryIterMut {
[INFO] [stdout]     |                     ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     the lifetime is elided here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]     |
[INFO] [stdout] 227 |     pub fn iter_mut(&mut self) -> EntryIterMut<'_> {
[INFO] [stdout]     |                                               ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 1.14s
[INFO] running `Command { std: "docker" "inspect" "5220ef6bda2bf0960d92f25962f0d1f7b26db7e93710025f90f92f8a9cdc3ad7", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "5220ef6bda2bf0960d92f25962f0d1f7b26db7e93710025f90f92f8a9cdc3ad7", kill_on_drop: false }`
[INFO] [stdout] 5220ef6bda2bf0960d92f25962f0d1f7b26db7e93710025f90f92f8a9cdc3ad7
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 71ff51610c6ce7cfb94ed2f02a9f21a58b5aba23f2e39ac47feedb65eef9f812
[INFO] running `Command { std: "docker" "start" "-a" "71ff51610c6ce7cfb94ed2f02a9f21a58b5aba23f2e39ac47feedb65eef9f812", kill_on_drop: false }`
[INFO] [stderr] warning: `package.edition` is unspecified, defaulting to `2015` while the latest is `2024`
[INFO] [stderr] warning: unnecessary parentheses around match arm expression
[INFO] [stderr]    --> src/trie.rs:279:22
[INFO] [stderr]     |
[INFO] [stderr] 279 |         'a'...'z' => (*c as usize - 'a' as usize),
[INFO] [stderr]     |                      ^                          ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 279 -         'a'...'z' => (*c as usize - 'a' as usize),
[INFO] [stderr] 279 +         'a'...'z' => *c as usize - 'a' as usize ,
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unnecessary parentheses around match arm expression
[INFO] [stderr]    --> src/trie.rs:280:22
[INFO] [stderr]     |
[INFO] [stderr] 280 |         'A'...'Z' => (*c as usize - 'A' as usize),
[INFO] [stderr]     |                      ^                          ^
[INFO] [stderr]     |
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 280 -         'A'...'Z' => (*c as usize - 'A' as usize),
[INFO] [stderr] 280 +         'A'...'Z' => *c as usize - 'A' as usize ,
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/trie.rs:279:12
[INFO] [stderr]     |
[INFO] [stderr] 279 |         'a'...'z' => (*c as usize - 'a' as usize),
[INFO] [stderr]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr]     = note: `#[warn(ellipsis_inclusive_range_patterns)]` (part of `#[warn(rust_2021_compatibility)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/trie.rs:280:12
[INFO] [stderr]     |
[INFO] [stderr] 280 |         'A'...'Z' => (*c as usize - 'A' as usize),
[INFO] [stderr]     |            ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `std::iter::once`
[INFO] [stderr]   --> src/problem01/solution.rs:22:9
[INFO] [stderr]    |
[INFO] [stderr] 22 |     use std::iter::once;
[INFO] [stderr]    |         ^^^^^^^^^^^^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/problem02/solution.rs:13:13
[INFO] [stderr]    |
[INFO] [stderr] 13 |         'a' ... 'z' => Some((c as u8 - 'a' as u8) as usize),
[INFO] [stderr]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]   --> src/problem02/solution.rs:14:13
[INFO] [stderr]    |
[INFO] [stderr] 14 |         'A' ... 'Z' => Some((c as u8 - 'A' as u8) as usize),
[INFO] [stderr]    |             ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]    |
[INFO] [stderr]    = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: `...` range patterns are deprecated
[INFO] [stderr]    --> src/problem03/solution.rs:154:30
[INFO] [stderr]     |
[INFO] [stderr] 154 |                     ' ' | '0'...'9' => false,
[INFO] [stderr]     |                              ^^^ help: use `..=` for an inclusive range
[INFO] [stderr]     |
[INFO] [stderr]     = warning: this is accepted in the current edition (Rust 2015) but is a hard error in Rust 2021!
[INFO] [stderr]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2021/warnings-promoted-to-error.html>
[INFO] [stderr] 
[INFO] [stderr] warning: variable does not need to be mutable
[INFO] [stderr]    --> src/trie.rs:264:19
[INFO] [stderr]     |
[INFO] [stderr] 264 |             .map(|mut node| {
[INFO] [stderr]     |                   ----^^^^
[INFO] [stderr]     |                   |
[INFO] [stderr]     |                   help: remove this `mut`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_mut)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: type `BitVec32Iter` is more private than the item `bitvec::BitVec32::iter`
[INFO] [stderr]   --> src/bitvec.rs:34:5
[INFO] [stderr]    |
[INFO] [stderr] 34 |     pub fn iter(&self) -> BitVec32Iter {
[INFO] [stderr]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ method `bitvec::BitVec32::iter` is reachable at visibility `pub(crate)`
[INFO] [stderr]    |
[INFO] [stderr] note: but type `BitVec32Iter` is only usable at visibility `pub(self)`
[INFO] [stderr]   --> src/bitvec.rs:63:1
[INFO] [stderr]    |
[INFO] [stderr] 63 | struct BitVec32Iter(BitVec32);
[INFO] [stderr]    | ^^^^^^^^^^^^^^^^^^^
[INFO] [stderr]    = note: `#[warn(private_interfaces)]` on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated items `NO_SET_BITS` and `last` are never used
[INFO] [stderr]   --> src/bitvec.rs:8:15
[INFO] [stderr]    |
[INFO] [stderr]  7 | impl BitVec32 {
[INFO] [stderr]    | ------------- associated items in this implementation
[INFO] [stderr]  8 |     pub const NO_SET_BITS: usize = 32;
[INFO] [stderr]    |               ^^^^^^^^^^^
[INFO] [stderr] ...
[INFO] [stderr] 44 |     pub fn last(&self) -> usize {
[INFO] [stderr]    |            ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: associated function `new` is never used
[INFO] [stderr]    --> src/problem06/solution.rs:100:8
[INFO] [stderr]     |
[INFO] [stderr]  99 | impl Point {
[INFO] [stderr]     | ---------- associated function in this implementation
[INFO] [stderr] 100 |     fn new(x: u16, y: u16) -> Point {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] 
[INFO] [stderr] warning: associated functions `new` and `from_point` are never used
[INFO] [stderr]    --> src/problem06/solution.rs:123:8
[INFO] [stderr]     |
[INFO] [stderr] 122 | impl Rect {
[INFO] [stderr]     | --------- associated functions in this implementation
[INFO] [stderr] 123 |     fn new() -> Rect {
[INFO] [stderr]     |        ^^^
[INFO] [stderr] ...
[INFO] [stderr] 140 |     fn from_point(point: &Point) -> Rect {
[INFO] [stderr]     |        ^^^^^^^^^^
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]   --> src/trie.rs:62:18
[INFO] [stderr]    |
[INFO] [stderr] 62 |     pub fn entry(&mut self, s: &str) -> Option<Entry> {
[INFO] [stderr]    |                  ^^^^^^^^^                     ^^^^^ the same lifetime is hidden here
[INFO] [stderr]    |                  |
[INFO] [stderr]    |                  the lifetime is elided here
[INFO] [stderr]    |
[INFO] [stderr]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]    |
[INFO] [stderr] 62 |     pub fn entry(&mut self, s: &str) -> Option<Entry<'_>> {
[INFO] [stderr]    |                                                     ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trie.rs:127:19
[INFO] [stderr]     |
[INFO] [stderr] 127 |     fn find_entry(&mut self, depth: usize, s: &str) -> Option<Entry> {
[INFO] [stderr]     |                   ^^^^^^^^^ the lifetime is elided here       ^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 127 |     fn find_entry(&mut self, depth: usize, s: &str) -> Option<Entry<'_>> {
[INFO] [stderr]     |                                                                    ++++
[INFO] [stderr] 
[INFO] [stderr] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stderr]    --> src/trie.rs:227:21
[INFO] [stderr]     |
[INFO] [stderr] 227 |     pub fn iter_mut(&mut self) -> EntryIterMut {
[INFO] [stderr]     |                     ^^^^^^^^^     ^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stderr]     |                     |
[INFO] [stderr]     |                     the lifetime is elided here
[INFO] [stderr]     |
[INFO] [stderr]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stderr] help: use `'_` for type paths
[INFO] [stderr]     |
[INFO] [stderr] 227 |     pub fn iter_mut(&mut self) -> EntryIterMut<'_> {
[INFO] [stderr]     |                                               ++++
[INFO] [stderr] 
[INFO] [stderr] warning: `aoc2018` (bin "aoc2018" test) generated 16 warnings (run `cargo fix --bin "aoc2018" -p aoc2018 --tests` to apply 12 suggestions)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.05s
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/aoc2018-5f7efd72c64d214f)
[INFO] [stdout] 
[INFO] [stdout] running 30 tests
[INFO] [stdout] test bitvec::tests::clear ... ok
[INFO] [stdout] test bitvec::tests::set ... ok
[INFO] [stdout] test bitvec::tests::iter ... ok
[INFO] [stdout] test bitvec::tests::get ... ok
[INFO] [stdout] test problem02::solution::tests::part_2_is_correct ... ok
[INFO] [stdout] test problem04::solution::tests::part_1_is_correct ... ok
[INFO] [stdout] test problem01::solution::tests::part_1_is_correct ... ok
[INFO] [stdout] test problem01::solution::tests::zig_zag_is_correct ... ok
[INFO] [stdout] test problem01::solution::tests::part_2_is_correct ... ok
[INFO] [stdout] test bitvec::tests::len ... ok
[INFO] [stdout] test problem05::solution::tests::part_2_sample_is_correct ... ok
[INFO] [stdout] test problem05::solution::tests::part_1_sample_is_correct ... ok
[INFO] [stdout] test problem05::solution::tests::part_1_is_correct ... ok
[INFO] [stdout] test problem04::solution::tests::part_2_is_correct ... ok
[INFO] [stdout] test problem06::solution::tests::part_1_sample_is_correct ... ok
[INFO] [stdout] test trie::tests::insert_returns_true_when_new_value_is_inserted_2 ... ok
[INFO] [stdout] test problem02::solution::tests::trie_is_correct_with_sample_data ... ok
[INFO] [stdout] test problem02::solution::tests::part_1_is_correct ... ok
[INFO] [stdout] test trie::tests::lookup_bit_pos ... ok
[INFO] [stdout] test trie::tests::len ... ok
[INFO] [stdout] test problem02::solution::tests::trie_is_correct_with_input_data ... ok
[INFO] [stdout] test trie::tests::entry_is_found ... ok
[INFO] [stdout] test trie::tests::contains ... ok
[INFO] [stdout] test problem06::solution::tests::part_2_sample_is_correct ... ok
[INFO] [stdout] test trie::tests::insert_returns_true_when_new_value_is_inserted ... ok
[INFO] [stdout] test problem03::solution::tests::part_2_is_correct ... ok
[INFO] [stdout] test problem03::solution::tests::part_1_is_correct ... ok
[INFO] [stdout] test problem05::solution::tests::part_2_is_correct ... ok
[INFO] [stdout] test problem06::solution::tests::part_1_is_correct ... ok
[INFO] [stdout] test problem06::solution::tests::part_2_is_correct ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 30 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.28s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "71ff51610c6ce7cfb94ed2f02a9f21a58b5aba23f2e39ac47feedb65eef9f812", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "71ff51610c6ce7cfb94ed2f02a9f21a58b5aba23f2e39ac47feedb65eef9f812", kill_on_drop: false }`
[INFO] [stdout] 71ff51610c6ce7cfb94ed2f02a9f21a58b5aba23f2e39ac47feedb65eef9f812
